<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Acconeer API: Envelope Service</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Acconeer API
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__Envelope.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Envelope Service<div class="ingroups"><a class="el" href="group__Services.html">Services</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Envelope service API description.  
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structacc__service__envelope__metadata__t.html">acc_service_envelope_metadata_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Metadata for the envelope service.  <a href="structacc__service__envelope__metadata__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structacc__service__envelope__result__info__t.html">acc_service_envelope_result_info_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Metadata for each result provided by the envelope service.  <a href="structacc__service__envelope__result__info__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga1961bbe0a32fa9f1367fec2cc4b8b2d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#ga1961bbe0a32fa9f1367fec2cc4b8b2d9">acc_service_envelope_configuration_create</a> (void)</td></tr>
<tr class="memdesc:ga1961bbe0a32fa9f1367fec2cc4b8b2d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a configuration for an envelope service.  <a href="#ga1961bbe0a32fa9f1367fec2cc4b8b2d9">More...</a><br /></td></tr>
<tr class="separator:ga1961bbe0a32fa9f1367fec2cc4b8b2d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga191a27d1109e8465e35112af42d23090"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#ga191a27d1109e8465e35112af42d23090">acc_service_envelope_configuration_destroy</a> (<a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a> *service_configuration)</td></tr>
<tr class="memdesc:ga191a27d1109e8465e35112af42d23090"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy an envelope configuration.  <a href="#ga191a27d1109e8465e35112af42d23090">More...</a><br /></td></tr>
<tr class="separator:ga191a27d1109e8465e35112af42d23090"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga221f9f51ccda33f8ab17baef645dbbcf"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#ga221f9f51ccda33f8ab17baef645dbbcf">acc_service_envelope_downsampling_factor_get</a> (<a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a> service_configuration)</td></tr>
<tr class="memdesc:ga221f9f51ccda33f8ab17baef645dbbcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the sensor downsampling factor.  <a href="#ga221f9f51ccda33f8ab17baef645dbbcf">More...</a><br /></td></tr>
<tr class="separator:ga221f9f51ccda33f8ab17baef645dbbcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gace4a4360ec5e7981fbb031da3eba4342"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#gace4a4360ec5e7981fbb031da3eba4342">acc_service_envelope_downsampling_factor_set</a> (<a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a> service_configuration, uint16_t downsampling_factor)</td></tr>
<tr class="memdesc:gace4a4360ec5e7981fbb031da3eba4342"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the sensor downsampling factor.  <a href="#gace4a4360ec5e7981fbb031da3eba4342">More...</a><br /></td></tr>
<tr class="separator:gace4a4360ec5e7981fbb031da3eba4342"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9a1b69477ac3f3e4a85b43a06f38c671"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#ga9a1b69477ac3f3e4a85b43a06f38c671">acc_service_envelope_running_average_factor_get</a> (<a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a> service_configuration)</td></tr>
<tr class="memdesc:ga9a1b69477ac3f3e4a85b43a06f38c671"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get running average factor.  <a href="#ga9a1b69477ac3f3e4a85b43a06f38c671">More...</a><br /></td></tr>
<tr class="separator:ga9a1b69477ac3f3e4a85b43a06f38c671"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac0026a740b18a1245f1608ff87370d9b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#gac0026a740b18a1245f1608ff87370d9b">acc_service_envelope_running_average_factor_set</a> (<a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a> service_configuration, float factor)</td></tr>
<tr class="memdesc:gac0026a740b18a1245f1608ff87370d9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set running average factor.  <a href="#gac0026a740b18a1245f1608ff87370d9b">More...</a><br /></td></tr>
<tr class="separator:gac0026a740b18a1245f1608ff87370d9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6f26cce4ea88aab741003bc6673d5e00"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#ga6f26cce4ea88aab741003bc6673d5e00">acc_service_envelope_noise_level_normalization_get</a> (<a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a> service_configuration)</td></tr>
<tr class="memdesc:ga6f26cce4ea88aab741003bc6673d5e00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get if noise level normalization will be done or not.  <a href="#ga6f26cce4ea88aab741003bc6673d5e00">More...</a><br /></td></tr>
<tr class="separator:ga6f26cce4ea88aab741003bc6673d5e00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9184afdee04f9ee3e86bc85d2db132d2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#ga9184afdee04f9ee3e86bc85d2db132d2">acc_service_envelope_noise_level_normalization_set</a> (<a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a> service_configuration, bool noise_level_normalization)</td></tr>
<tr class="memdesc:ga9184afdee04f9ee3e86bc85d2db132d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set if noise level normalization should be done or not.  <a href="#ga9184afdee04f9ee3e86bc85d2db132d2">More...</a><br /></td></tr>
<tr class="separator:ga9184afdee04f9ee3e86bc85d2db132d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6dcf91e972ace258485cfa6020c3bb9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#ga6dcf91e972ace258485cfa6020c3bb9c">acc_service_envelope_get_metadata</a> (<a class="el" href="group__Generic.html#gac31f87097f46e587c8d54fb0406f62d4">acc_service_handle_t</a> handle, <a class="el" href="structacc__service__envelope__metadata__t.html">acc_service_envelope_metadata_t</a> *metadata)</td></tr>
<tr class="memdesc:ga6dcf91e972ace258485cfa6020c3bb9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get service metadata.  <a href="#ga6dcf91e972ace258485cfa6020c3bb9c">More...</a><br /></td></tr>
<tr class="separator:ga6dcf91e972ace258485cfa6020c3bb9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaefee7fa19c46d279460a58483ce0b8a1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#gaefee7fa19c46d279460a58483ce0b8a1">acc_service_envelope_get_next</a> (<a class="el" href="group__Generic.html#gac31f87097f46e587c8d54fb0406f62d4">acc_service_handle_t</a> handle, uint16_t *data, uint16_t data_length, <a class="el" href="structacc__service__envelope__result__info__t.html">acc_service_envelope_result_info_t</a> *result_info)</td></tr>
<tr class="memdesc:gaefee7fa19c46d279460a58483ce0b8a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve the next result from the service.  <a href="#gaefee7fa19c46d279460a58483ce0b8a1">More...</a><br /></td></tr>
<tr class="separator:gaefee7fa19c46d279460a58483ce0b8a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaff82dc6a517c81b38cd855e70ea44219"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Envelope.html#gaff82dc6a517c81b38cd855e70ea44219">acc_service_envelope_execute_once</a> (<a class="el" href="group__Generic.html#gac31f87097f46e587c8d54fb0406f62d4">acc_service_handle_t</a> handle, uint16_t *data, uint16_t data_length, <a class="el" href="structacc__service__envelope__result__info__t.html">acc_service_envelope_result_info_t</a> *result_info)</td></tr>
<tr class="memdesc:gaff82dc6a517c81b38cd855e70ea44219"><td class="mdescLeft">&#160;</td><td class="mdescRight">Execute service one time.  <a href="#gaff82dc6a517c81b38cd855e70ea44219">More...</a><br /></td></tr>
<tr class="separator:gaff82dc6a517c81b38cd855e70ea44219"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Envelope service API description. </p>
<h2 class="groupheader">Function Documentation</h2>
<a id="ga1961bbe0a32fa9f1367fec2cc4b8b2d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga1961bbe0a32fa9f1367fec2cc4b8b2d9">&#9670;&nbsp;</a></span>acc_service_envelope_configuration_create()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a> acc_service_envelope_configuration_create </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create a configuration for an envelope service. </p>
<p>A configuration is created for the envelope service and populated with default values.</p>
<dl class="section return"><dt>Returns</dt><dd>Service configuration, NULL if creation was not possible </dd></dl>

</div>
</div>
<a id="ga191a27d1109e8465e35112af42d23090"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga191a27d1109e8465e35112af42d23090">&#9670;&nbsp;</a></span>acc_service_envelope_configuration_destroy()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void acc_service_envelope_configuration_destroy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a> *&#160;</td>
          <td class="paramname"><em>service_configuration</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Destroy an envelope configuration. </p>
<p>Destroy an envelope configuration that is no longer needed, may be done even if a service has been created with the specific configuration and has not yet been destroyed. The service configuration reference is set to NULL after destruction.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">service_configuration</td><td>The configuration to destroy, set to NULL </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga221f9f51ccda33f8ab17baef645dbbcf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga221f9f51ccda33f8ab17baef645dbbcf">&#9670;&nbsp;</a></span>acc_service_envelope_downsampling_factor_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint16_t acc_service_envelope_downsampling_factor_get </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a>&#160;</td>
          <td class="paramname"><em>service_configuration</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the sensor downsampling factor. </p>
<p>Gets the downsampling factor - the number of steps taken between each data point. A downsampling factor of 1 samples every possible point in the range. A downsampling factor of 2 samples every other point, and so on.</p>
<p>In the envelope service, the base step length is ~0.5mm. Thus, for example setting downsampling factor to 4 makes the distance between two points in the measured range ~2mm.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">service_configuration</td><td>The configuration to get downsampling factor from </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The downsampling factor </dd></dl>

</div>
</div>
<a id="gace4a4360ec5e7981fbb031da3eba4342"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gace4a4360ec5e7981fbb031da3eba4342">&#9670;&nbsp;</a></span>acc_service_envelope_downsampling_factor_set()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void acc_service_envelope_downsampling_factor_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a>&#160;</td>
          <td class="paramname"><em>service_configuration</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>downsampling_factor</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set the sensor downsampling factor. </p>
<p>Sets the downsampling factor - the number of steps taken between each data point. A downsampling factor of 1 samples every possible point in the range. A downsampling factor of 2 samples every other point, and so on.</p>
<p>In the envelope service, the base step length is ~0.5mm. Thus, for example setting downsampling factor to 4 makes the distance between two points in the measured range ~2mm.</p>
<p>The envelope service supports a downsampling factor of 1, 2, or 4.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">service_configuration</td><td>The configuration to set downsampling factor in </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">downsampling_factor</td><td>The downsampling factor </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gaff82dc6a517c81b38cd855e70ea44219"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaff82dc6a517c81b38cd855e70ea44219">&#9670;&nbsp;</a></span>acc_service_envelope_execute_once()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool acc_service_envelope_execute_once </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Generic.html#gac31f87097f46e587c8d54fb0406f62d4">acc_service_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>data_length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structacc__service__envelope__result__info__t.html">acc_service_envelope_result_info_t</a> *&#160;</td>
          <td class="paramname"><em>result_info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Execute service one time. </p>
<p>Activates service, produces one result and then deactivates the service. Blocks the application until a service result has been produced. May fail if the service is already active.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">handle</td><td>The service handle for the service to execute </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">data</td><td>Envelope result </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">data_length</td><td>The length of the buffer provided for the result </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result_info</td><td>Envelope result info, sending in NULL is ok </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if successful, false otherwise </dd></dl>

</div>
</div>
<a id="ga6dcf91e972ace258485cfa6020c3bb9c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6dcf91e972ace258485cfa6020c3bb9c">&#9670;&nbsp;</a></span>acc_service_envelope_get_metadata()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void acc_service_envelope_get_metadata </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Generic.html#gac31f87097f46e587c8d54fb0406f62d4">acc_service_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structacc__service__envelope__metadata__t.html">acc_service_envelope_metadata_t</a> *&#160;</td>
          <td class="paramname"><em>metadata</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get service metadata. </p>
<p>Each service provide metadata after being created with information that could be relevant for an application. The metadata contain information such as data length and actual start and length.</p>
<p>May only be called after a service has been created.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">handle</td><td>The service handle for the service to get metadata for </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">metadata</td><td>Metadata results are provided in this parameter </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="gaefee7fa19c46d279460a58483ce0b8a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gaefee7fa19c46d279460a58483ce0b8a1">&#9670;&nbsp;</a></span>acc_service_envelope_get_next()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool acc_service_envelope_get_next </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Generic.html#gac31f87097f46e587c8d54fb0406f62d4">acc_service_handle_t</a>&#160;</td>
          <td class="paramname"><em>handle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>data_length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structacc__service__envelope__result__info__t.html">acc_service_envelope_result_info_t</a> *&#160;</td>
          <td class="paramname"><em>result_info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieve the next result from the service. </p>
<p>May only be called after a service has been activated to retrieve the next result, blocks the application until a result is ready.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">handle</td><td>The service handle for the service to get the next result for </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">data</td><td>Envelope result </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">data_length</td><td>The length of the buffer provided for the result </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">result_info</td><td>Envelope result info, sending in NULL is ok </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if successful, false otherwise </dd></dl>

</div>
</div>
<a id="ga6f26cce4ea88aab741003bc6673d5e00"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga6f26cce4ea88aab741003bc6673d5e00">&#9670;&nbsp;</a></span>acc_service_envelope_noise_level_normalization_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool acc_service_envelope_noise_level_normalization_get </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a>&#160;</td>
          <td class="paramname"><em>service_configuration</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get if noise level normalization will be done or not. </p>
<p>The purpose of the noise level normalization is to scale the signal according to the sensor noise level to decrease the signal amplitude variation between individual sensors.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">service_configuration</td><td>The configuration to get the noise level normalization setting for </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The noise level normalization flag </dd></dl>

</div>
</div>
<a id="ga9184afdee04f9ee3e86bc85d2db132d2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9184afdee04f9ee3e86bc85d2db132d2">&#9670;&nbsp;</a></span>acc_service_envelope_noise_level_normalization_set()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void acc_service_envelope_noise_level_normalization_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a>&#160;</td>
          <td class="paramname"><em>service_configuration</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>noise_level_normalization</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set if noise level normalization should be done or not. </p>
<p>This function controls if a noise level normalization will be done at the beginning of the envelope processing.</p>
<p>The purpose of the noise level normalization is to scale the signal according to the sensor noise level to decrease the signal amplitude variation between individual sensors.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">service_configuration</td><td>The configuration to enable or disable the noise level normalization for </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">noise_level_normalization</td><td>Flag to determine if noise level normalization should be done or not </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="ga9a1b69477ac3f3e4a85b43a06f38c671"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ga9a1b69477ac3f3e4a85b43a06f38c671">&#9670;&nbsp;</a></span>acc_service_envelope_running_average_factor_get()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float acc_service_envelope_running_average_factor_get </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a>&#160;</td>
          <td class="paramname"><em>service_configuration</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get running average factor. </p>
<p>The running average factor is the factor of which the most recent sweep is weighed against previous sweeps. Valid range is between 0.0 and 1.0 where 0.0 means that no history is weighed in, i.e filtering is effectively disabled. A factor of 1.0 means that the most recent sweep has no effect on the result, which will result in that the first sweep is forever received as the result. The filtering is coherent and is done on complex valued IQ data before conversion to envelope data.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">service_configuration</td><td>The configuration to get the running average factor for </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Running average factor </dd></dl>

</div>
</div>
<a id="gac0026a740b18a1245f1608ff87370d9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#gac0026a740b18a1245f1608ff87370d9b">&#9670;&nbsp;</a></span>acc_service_envelope_running_average_factor_set()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void acc_service_envelope_running_average_factor_set </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__Generic.html#ga3659144b760468217ed4cb1fc3447330">acc_service_configuration_t</a>&#160;</td>
          <td class="paramname"><em>service_configuration</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>factor</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set running average factor. </p>
<p>The running average factor is the factor of which the most recent sweep is weighed against previous sweeps. Valid range is between 0.0 and 1.0 where 0.0 means that no history is weighed in, i.e filtering is effectively disabled. A factor of 1.0 means that the most recent sweep has no effect on the result, which will result in that the first sweep is forever received as the result. The filtering is coherent and is done on complex valued IQ data before conversion to envelope data.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">service_configuration</td><td>The configuration to set the running average factor for </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">factor</td><td>The running average factor to set </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Mon Dec 2 2019 09:40:47 for Acconeer API by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
